package com.xinbochuang.machine.admin.dto;

import java.io.Serializable;
import java.util.Date;
import java.util.List;

import com.xinbochuang.machine.admin.domain.MacinoutAssociation;
import lombok.Data;
import lombok.EqualsAndHashCode;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.xinbochuang.machine.admin.domain.Worker;
import com.xinbochuang.machine.common.domain.BaseEntity;

/**
 * @author 杜文博
 * @date Created in 11:55 2020/10/14
 */
@Data
@EqualsAndHashCode(callSuper = false)
public class MacInOutDto extends BaseEntity implements Serializable {

	/**
	 * 关联施工人员表
	 */
	private List<Worker> worker;

	/**
	 * 关联施工机房表
	 */
	private List<MacinoutAssociation> macList;

	/**
	 * 工单流水号
	 */
	@TableId("UUID")
	private String uuid;

	/**
	 * 工单状态（1为待审核，2为已审核，3为已驳回，4为终止）
	 */
	@TableField("ORDER_STATUS")
	private Integer orderStatus;

	/**
	 * 建单人
	 */
	@TableField("CREATE_ORDER_USER_ID")
	private String createOrderUserId;

	/**
	 * 建单人姓名
	 */
	@TableField("CREATE_ORDER_USER_NAME")
	private String createOrderUserName;

	/**
	 * 工单主题
	 */
	@TableField("ORDER_THEME")
	private String orderTheme;

	/**
	 * 工程名称
	 */
	@TableField("ORDER_NAME")
	private String orderName;

	/**
	 * 进出编号
	 */
	@TableField("ORDER_NO")
	private String orderNo;
	/**
	 * 施工单位
	 */
	@TableField("CONSTRUCTION_DEPT")
	private String constructionDept;

	/**
	 * 施工单位主键
	 */
	@TableField("CONSTRUCTION_DEPT_ID")
	private String constructionDeptId;

	/**
	 * 施工对象类型1为机柜，2为其它
	 */
	@TableField("WORK_TYPE")
	private Integer workType;

	/**
	 * 地市
	 */
	@TableField("CITY")
	private String city;

	/**
	 * 机房名称
	 */
	@TableField("MAC_NAME")
	private String macName;

	/**
	 * 机房表关联Id
	 */
	@TableField("MAC_ID")
	private String macId;

	/**
	 * 机柜Id
	 */
	@TableField("CABINET_ID")
	private String cabinetId;

	/**
	 * 机柜名称
	 */
	@TableField("CABINET_NAME")
	private String cabinetName;

	/**
	 * 机房责任人
	 */
	@TableField("MAC_PRINCIPAL")
	private String macPrincipal;

	/**
	 * 其它施工
	 */
	@TableField("OTHER_WORK")
	private String otherWork;

	/**
	 * 施工开始时间
	 */
	@TableField("WORK_BEGIN_TIME")
	private Date workBeginTime;

	/**
	 * 施工结束时间
	 */
	@TableField("WORK_END_TIME")
	private Date workEndTime;

	/**
	 * 施工部门现场负责人Id
	 */
	@TableField("WORK_ING_PRINCPCIPAL_ID")
	private String workIngPrincpcipalId;

	/**
	 * 施工部门现场负责人姓名
	 */
	@TableField("WORK_ING_PRINCPCIPAL")
	private String workIngPrincpcipal;
	/**
	 * 施工部门现场负责人单位Id
	 */
	@TableField("WORK_ING_PRINCPCIPAL_DEPT_ID")
	private String workIngPrincpcipalDeptId;

	/**
	 * 施工部门现场负责人单位
	 */
	@TableField("WORK_ING_PRINCPCIPAL_DEPT")
	private String workIngPrincpcipalDept;
	/**
	 * 现场负责人联系电话
	 */
	@TableField("WORK_ING_PRINCPCIPAL_TEL")
	private String workIngPrincpcipalTel;

	/**
	 * 自有随工人员
	 */
	@TableField("FREE_WORKER")
	private String freeWorker;

	/**
	 * 自有随工人员
	 */
	@TableField("FREE_WORKER_NAME")
	private String freeWorkerName;
	/**
	 * 自有随工人员Id
	 */
	@TableField("FREE_WORKER_ID")
	private String freeWorkerId;

	/**
	 * 自有随工人员所在部门
	 */
	@TableField("FREE_DEPT")
	private String freeDept;

	/**
	 * 自由随工人员所在部门Id
	 */
	@TableField("FREE_DEPT_ID")
	private String freeDeptId;

	/**
	 * 建单人所在部门
	 */
	@TableField("CREATE_ORDER_DEPT")
	private String createOrderDept;

	/**
	 * 建单人所在部门Id
	 */
	@TableField("CREATE_ORDER_DEPT_ID")
	private String createOrderDeptId;

	/**
	 * 审核说明
	 */
	@TableField("CHECK_DETAIL")
	private String checkDetail;

	/**
	 * 告警字段
	 */
	@TableField("ALARM")
	private Integer alarm;

	/**
	 * 附件地址
	 */
	@TableField("IMG_URL")
	private String imgUrl;

	/**
	 * 删除标志
	 */
	@TableField("DELETE_FLAG")
	private Integer deleteFlag;

	@TableField("CREATE_TIME")
	private String createTime;

	@TableField("UPDATE_TIME")
	private String updateTime;

	@TableField("CREATE_BY")
	private String createBy;

	@TableField("UPDATE_BY")
	private String updateBy;

	/**
	 * 第三方工单Id
	 */
	@TableField("ORDER_ID")
	private String orderId;

	/**
	 * 第三方工单名称
	 */
	@TableField("ORDER_THIRD_NAME")
	private String orderThirdName;

	private transient String loginUserId;
}
